<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
</body>
</html>
<script>
// 内存的 堆 和 栈
  // 栈，表示的是 连续的 内存空间。 栈因为是 连续的内存，所以 不会 非常大。
  // 堆，表示的 不连续的 内存空间。 理论上，堆内存的开辟，可以无限扩大(以计算内部内存大小为上线)。

// ---------------------
  // 基础数据类型，用的 是 栈
  // 引用数据类型，用的 是 堆

/* 基础数据类型
  var num1 = 123;
  var num2 = num1;
  num1 = 999;
  console.log(num1, num2);
 */

/* 引用类型
  var obj1 = {
    age: 33
  }
  var obj2 = obj1;
  obj2.name = 'mark';
  obj2.age = 11;

  console.log(obj1, obj2);  
    // obj2: {age: 33, name: 'mark'}
    // obj1: {age: 33, name: 'mark'}
 */

 /* 数组也是 引用数据类型
  var arr1 = [1, 2, 3];
  var arr2 = arr1;
  arr2.push('xxx');
  
  console.log(arr1, arr2);
 */

</script>